Devices such as smart phones, remotes and consoles, and personal digital assistants typically use sensors to detect motion. Sensors may be used in motion-sensitive or motion-based applications. Applications, such as games, often use sensors to allow a user to gesture with the device. For example, a user may swing a remote, such as a Wii remote, as if they were swinging a baseball bat when playing a baseball game on the Wii entertainment system. In other applications, sensors are used to accomplish a task. For example, moving an iphone from right to left may be the equivalent of pressing a previous button or moving the iphone up and down may be the equivalent of scrolling up and down on as webpage.
Devices typically recognize gestures through the use of pattern recognition theory and machine learning methods. Typical gesture recognition techniques include dynamic time wraping, the hidden markov model and/or a support vector machine. These techniques rely on data sets that are generated by user training. Because of the different ways a user may move with a gesture device, a user must typically train a device so that the device can recognize a particular user's gesture with an acceptable level of accuracy. For example, one user may gesture slowly while another user may gesture quickly. While some gesture recognition techniques require online training with a user training the device prior to use, other techniques require large databases for offline training. As a result, the current techniques of gesture recognition are time consuming and/or user dependent. It is with respect to these and other limitations that the present improvements are needed.